﻿using System;
using System.Threading;

namespace Assets.Scripts
{
    interface ITask
    {
        string TaskName { get; }
        int TaskID { get; set; }
        TaskStatus taskStatus { get; set; }
        TimeSpan Eslapsed { get; set; }
        bool IsCanReverse { get; }
        void OnReverse();
        void OnReady();
        void OnDoTask(CancellationToken cancellationToken);
        void OnFinal();
        void OnStatueChanged(TaskStatus taskStatus);
    }
}
